﻿Imports System.Data
Imports WSEntidades
Imports MySql.Data.MySqlClient
Public Class PerfilPermiFact
    Public Shared Function Build(ByVal dr As MySqlDataReader) As perfilpermiBE
        Dim tmpPerfilPermi As perfilpermiBE = New perfilpermiBE()
        Try
            With tmpPerfilPermi
                    .IdPerfil = convertDTFromDb.convertInt32(dr.Item("IdPerfil"))
                .Perfil = convertDTFromDb.ConvertString(dr.Item("Perfil"))
                If (.Perfil.ToUpper() <> "ADMINISTRADOR") Then
                    Select Case convertDTFromDb.ConvertString(dr.Item("Activo"))
                        Case "S"
                            .Activo = perfilBE.ActivoPerfil.Activo
                        Case "N"
                            .Activo = perfilBE.ActivoPerfil.Inactivo
                        Case Else
                            .Activo = perfilBE.ActivoPerfil.Inactivo
                    End Select
                    Select Case convertDTFromDb.ConvertString(dr.Item("Total"))
                        Case "S"
                            .Total = perfilpermiBE.TotalPermiso.Si
                        Case "N"
                            .Total = perfilpermiBE.TotalPermiso.No
                        Case Else
                            .Total = perfilBE.ActivoPerfil.Inactivo
                    End Select
                    Select Case convertDTFromDb.ConvertString(dr.Item("Consulta"))
                        Case "S"
                            .Consulta = perfilpermiBE.ConsultaPermiso.Si
                        Case "N"
                            .Consulta = perfilpermiBE.ConsultaPermiso.No
                        Case Else
                            .Consulta = perfilpermiBE.ConsultaPermiso.No
                    End Select
                    If (.idpermisos = 0) Then
                        .Negar = perfilpermiBE.NegarPermiso.Si
                    Else
                        Select Case convertDTFromDb.ConvertString(dr.Item("Negar"))
                            Case "S"
                                .Negar = perfilpermiBE.NegarPermiso.Si
                            Case "N"
                                .Negar = perfilpermiBE.NegarPermiso.No
                            Case Else
                                .Negar = perfilpermiBE.NegarPermiso.No
                        End Select
                    End If
                Else
                    .Activo = perfilBE.ActivoPerfil.Activo
                    .Total = perfilpermiBE.TotalPermiso.Si
                    .Consulta = perfilpermiBE.ConsultaPermiso.No
                    .Negar = perfilpermiBE.NegarPermiso.No
                End If
                    .idProceso = convertDTFromDb.ConvertString(dr.Item("idproceso"))
                    .proceso = convertDTFromDb.ConvertString(dr.Item("proceso"))
                    .idpermisos = convertDTFromDb.convertInt32(dr.Item("idpermisos"))
            End With
            Return tmpPerfilPermi
        Catch ex As Exception
            Throw
        Finally
            tmpPerfilPermi = Nothing
        End Try
    End Function
End Class
